Generally, due to increasing complexity and heterogeneity of software, it requires significant emphasis on evolving further requirements based software testing. Existing techniques in the area of requirement based software testing focuses on formalizing the software requirements as linear temporal logic properties and then generating test cases from the requirement model (herein after referred as stateflow model) that satisfy a coverage goal over the linear temporal logic properties. However, the current practice in industries is the manual extraction of stateflow model and properties from the software requirements.
The manual extraction of stateflow model from the software requirements has significant limitations. Firstly, this process incurs additional overhead both in terms of cost and time in generating the stateflow models from the requirements and thereby delays the overall software test case generation process. This in turn significantly impact on the software and product development and delivery process of the organization. Secondly, the manually generated software model may be error-prone or may not represent some functionality, as a result the model might not be able to uncover some critical bugs (such as, missing condition, variable, reference, operator negation, calibration mismatch, etc.) in the software when it is used to generate test cases. Moreover, even if there is any bug detected in the software it might be impossible to map the bug to the requirement. Therefore, there is a need to automatically generate executable stateflow models from the software requirements which will in turn facilitate timely generation of adequate and optimal test cases
Hence, there is a need of a method and system for generating stateflow models from software requirements to address the aforementioned issues.